#include "trap.h"
   .set noat
   .globl main 
   .text

main:
   add  $t3, $at, $v0 # t3 = $at + $v0 = 0x01 + 0x02 = 0x03
   addu $t4, $at, $v1 # t4 = $at + $v1 = 0x01 + 0x03 = 0x04
   addi $t5, $at, 0x45 # t5 = $at + 0x45 = 0x46
   addiu $t6, $at, 0x55 # t6 = $at + 0x55 = 0x56

   sub $t7, $a2, $a1 # $t7 = $a2 - $a1 = 0x01
   subu $s0, $a2, $a1 # $s0 = $a2 - $a1 = 0x01

   li $s1, 0xf0000000 # $s1 = 0xf0000000
   li $s2, 0x00000001 # $s2 = 0x00000001
   multu $s1, $s2   # hi lo = s1 * s2=f00_0000_0000, hi = F00, lo = 0000_0000

   slt $s3, $s1, $s2 # signed: $s1 < $s2, $s3 = 1       
   sltu $s4, $s1,$s2 # unsigned: $s1 > $s2, $s4 = 0
   slti $s5, $s1, 0xf000 # signed: $s1 <  0xffff_f0000, $s5 = 1
   sltiu $s6, $s1, 0xf000 # unsigned: $s1 < 0xffff_f0000, $s6 = 1

   mult $s1, $s2 # hi lo = s1 * s2=f00_0000_0000, hi = F00, lo = 0000_0000

   and $s7, $at, $v0 # $s7 = $at & $s7 = 0
   andi $t8, $at, 0x1024 # $t8 = $at & 0x1024 = 0
   lui $t9,  0x1234 # $t9 = 0x12340000
   nor $k0, $a3, $t2 # $k0 = 0x10 nor 0x07 -> 0xffffffe8
   or $k1, $a3, $t2 # $k1 = 0x10 or 0xt2 -> 0x00000017
   ori $a0, $a3, 0x1234 # a0 = 0x1234 | 0x07 ->  0x00001237
   xor  $a1, $a3, $t2 # a1 = 0x07 ^ 0x10 -> 0x00000017
   xori $a2, $a3, 0x1234 # a2 = 0x07 ^ 0x1234 -> 0x00001233

   HIT_GOOD_TRAP		#stop temu